enum dtype_node_define {
  TYPE(NODE_DEFINE)=0x4900,
};

enum subtype_node_define {
  SUBTYPE(NODE_DEFINE,NODEINFO_REQ)=0x01,
  SUBTYPE(NODE_DEFINE,NODEINFO_SENDER)
};

enum enum_nodereq_state {
  SUCCEED=0x01,
  FAILED
};

typedef struct node_define_nodeinfo_req {
  char hostname[65];
  char host_uuid[65];
  char kernel_version[65];
  char sys_version[80];
  char machine[65];
  char if_ipv4[16];
  char if_mac[64];
  char whitelist_uuid[80];
  enum enum_nodereq_state req_state;
}__attribute__((packed)) RECORD(NODE_DEFINE,NODEINFO_REQ);

typedef struct node_define_nodeinfo_sender {
  char hostname[65];
  char host_uuid[65];
  char kernel_version[65];
  char sys_version[80];
  char machine[65];
  char if_ipv4[16];
  char if_mac[65];
  char whitelist_uuid[80];
}__attribute__((packed)) RECORD(NODE_DEFINE,NODEINFO_SENDER);
